ebd619aea70d6937c742e022fcedb02806108e39,stc/code/src/exm/stc/ic/opt/valuenumber/Congruences.java,Congruences,canonicalizeAssignValue,#GlobalConstants#ArgCV#,698

Before Change


    // TODO: will need to recanonicalize?

    if (val.isArrayMemberVal() || val.isArrayMember()) {
      Arg arr = byAlias.findCanonical(val.getInput(0));
      Arg ix = byValue.findCanonical(val.getInput(1));
      return Arrays.asList(arr, ix);
    } else if (val.isStructFieldVal() || val.isStructFieldAlias() ||

After Change


    //  (e.g. root var by alias and subscripts by value)

    if (val.isArrayMemberVal() || val.isArrayMember()) {
      Arg arr = byAlias.findCanonical(val.getInput(0)).arg();
      Arg ix = byValue.findCanonical(val.getInput(1)).arg();
      return Arrays.asList(arr, ix);
    } else if (val.isStructFieldVal() || val.isStructFieldAlias() ||